草庐IT

CoffeeScript 中的 Node.js module.exports

全部标签

javascript - Mootools 类中的私有(private)方法

我对在Javascript中使用oop比较陌生,我想知道私有(private)方法的最佳实践是什么。现在,我正在使用mootools创建我的类,并通过在私有(private)方法前加上下划线并强制自己不要在类外部调用该方法来模拟私有(private)方法。所以我的课看起来像:varNotifier=newClass({...showMessage:function(message){//publicmethod...},_setElementClass:function(class){//privatemethod...}});这是在JS中处理私有(private)方法的良好/标准方式

javascript - node.js中处理 `exports`的建议

理论:node.js吸引我的地方之一是将它用作命令行工具。理论上,我可以用Javascript编写库并将它们放在我的~/.node_libraries目录中,然后我可以重用这些库。例如,我在~/.node_libraries中有一个text.js,它有一堆我反复使用的与文本相关的函数(depunctuate()、tokenize_text()之类的东西)。这样做的好处是我可以在我的命令行脚本和服务器端使用相同的text.js文件。现在我正在使用Python进行所有文本处理工作,但我只想坚持使用一种语言。练习:AFAICT,为了创建一个node.js模块,我必须将我想要的所有内容附加到e

javascript - 将带有javascript闭包的参数附加到匿名函数中的默认参数

我想在GooglegeocoderAPI调用中添加一些额外的参数,因为我在循环中运行它,但我不确定如何将闭包参数附加到已经具有由调用API。例如:for(vari=0;i我希望能够在传递的geocoder.geocode()匿名函数中使用i的值,但是如果我有一个闭包使用}(i));例如在第4行这将替换会破坏地理编码器的第一个参数。有没有办法可以使用闭包,或者将i的值传递给匿名函数?实际上我想做的是:geocoder.geocode({'address':address},function(results,status,i){alert(i);//0,1,2,3,4}(i));但工作:-

javascript - Javascript 正则表达式中的\d 是做什么的?

\d在这个例子中做了什么?/Chapter(\d+)\.\d*/ 最佳答案 在什么情况下?在正则表达式中,它匹配一个数字(0-9)。编辑,根据您的评论:它匹配以Chapter开头的任何字符串,后跟数字,然后是一个点,然后是一些数字。比如第1.0章和第12.01章。 关于javascript-Javascript正则表达式中的\d是做什么的?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questi

javascript - javascript正则表达式中的冒号

我有一个正则表达式:/^([a-zA-Z0-9_-.''""]+)$/它非常适合字母、数字和一些特殊字符,如-、.、'和".不,我希望它也允许使用冒号(:)。我尝试了以下正则表达式但它失败了-它开始允许许多其他特殊字符。/^([a-zA-Z0-9_:-.''""]+)$/知道为什么吗? 最佳答案 -在字符类中有特殊含义,就像在a-z中一样。试试这个:/^([a-zA-Z0-9_:\-.'"]+)$/-.(空格到点)允许一些额外的字符,如#、$等。如果这是故意的,请尝试:/^([a-zA-Z0-9_-.'":]+)$/此外,您不必多次

javascript - 如何确定星期六和星期日在java脚本中的两个日期之间

我有如下要求我有两个日期,我需要找出星期六和星期日之间的间隔时间日期1:2011年2月6日日期2:2011年2月7日10天是周末谢谢斯里尼 最佳答案 没有循环的O(1)解决方案:functioncountWeekendDays(d0,d1){varndays=1+Math.round((d1.getTime()-d0.getTime())/(24*3600*1000));varnsaturdays=Math.floor((d0.getDay()+ndays)/7);return2*nsaturdays+(d0.getDay()==0

JavaScript:查找值是否在数组中的对象内的最佳方法

这个问题在这里已经有了答案:关闭11年前。PossibleDuplicate:FindobjectbyidinanarrayofJavaScriptobjectsHowtocheckifvalueexistsinthisJavaScriptarray?例如:vararr=[{id:1,color:'blue'},{id:2,color:'red'},{id:3,color:'yellow'}];alert(indexOf('blue'));//HowcanIgettheindexofblue??

javascript - 如何在实例化期间捕获新 Backbone.Model 中的验证错误?

绑定(bind)到现有模型的“错误”事件很容易,但是确定新模型是否有效的最佳方法是什么?Car=Backbone.Model.extend({validate:function(attributes){if(attributes.weight==null||attributes.weight 最佳答案 可以通过调用模型的validate方法显式触发验证逻辑。但是,这不会导致触发error事件。您可以通过调用trigger方法为模型手动触发错误事件。实现所需行为的一种方法是在初始化方法中手动触发事件:Car=Backbone.Mode

javascript - 在 node.js 中共享对象并避免全局变量

在不将db变量转换为全局?varmongo=require('mongoskin'),db=mongo.db(config.db.adress);app.use(function(req,res,next){db.open(function(err,data){(err)?res.send('Internalservererror',500):next();});});//Settingupcontrollershereapp.post('/users',require('./controllers/users').create);我有PHP背景,开始考虑依赖注入(inject),但我

javascript - casper.js 中的 setInterval 和 this.wait

我需要在每次迭代之间做一个3次2秒的循环。我尝试了这3个选项:选项1varcasper=require('casper').create({verbose:false,logLevel:'debug'});casper.start("http://google.com");casper.on('remote.message',function(msg){this.echo('remotemessagecaught:'+msg);})casper.thenEvaluate(function(){varx=0;varintervalID=setInterval(function(){con